import request from "@/utils/request";

// export function login(data) {
//   return request({
//     baseURL: "",s
//     url: "/dmserver/oauth/login",
//     method: "post",
//     data: data
//   });
// }



// 获取数据字典 dict_type 的数据
export function getDictTypeData(type) {
  return request({
    baseURL: "/prod-api",
    url: `/system/dict/data/type/${type}`,
    method: "get",
  });
}

// // 获取数据字典 dict_data 的数据
// export function getDictTypeData(type) {
//   return request({
//     baseURL: "/prod-api",
//     url: `/system/dict/data/type/${type}`,
//     method: "get",
//   });
// }

// 查询用户列表
export function listUser(query) {
  return request({
    baseURL: "/prod-api",
    url: `/system/user/list`,
    method: "get",
    params: query,
    apiMode:'baseSetting'
  });
}

// 查询用户详细
export function getUser(userId) {
  return request({
    baseURL: "/prod-api",
    url: '/system/user/' + (userId || ''),
    method: 'get'
  })
}

// 删除用户
export function delUser(userId) {
  return request({
    baseURL: "/prod-api",
    url: '/system/user/' + (userId || ''),
    method: 'delete'
  })
}

// 新增用户
export function addUser(data) {
  return request({
    baseURL: "/prod-api",
    url: '/system/user',
    method: 'post',
    data
  })
}

// 修改用户
export function updateUser(data) {
  return request({
    baseURL: "/prod-api",
    url: '/system/user',
    method: 'put',
    data
  })
}

// 用户密码重置
export function resetUserPwd(userId, password) {
  const data = {
    userId,
    password
  }
  return request({
    baseURL: "/prod-api",
    url: '/system/user/resetPwd',
    method: 'put',
    data
  })
}

// 用户状态修改
export function changeUserStatus(userId, status) {
  const data = {
    userId,
    status
  }
  return request({
    baseURL: "/prod-api",
    url: '/system/user/changeStatus',
    method: 'put',
    data
  })
}

// 查询部门下拉树结构
export function deptTreeSelect_FromUserId() {
  return request({
    baseURL: "/prod-api",
    url: '/system/user/deptTree',
    method: 'get'
  })
}

// 查询授权角色
export function getAuthRole(userId) {
  return request({
    baseURL: "/prod-api",
    url: '/system/user/authRole/' + userId,
    method: 'get'
  })
}
// 保存授权角色
export function updateAuthRole(data) {
  return request({
    baseURL: "/prod-api",
    url: '/system/user/authRole',
    method: 'put',
    params: data
  })
}


////////--------ROLE----------------ROLE----------------ROLE----------------ROLE----------------ROLE--------
////////--------ROLE----------------ROLE----------------ROLE----------------ROLE----------------ROLE--------
// 查询角色列表
export function listRole(query) {
  return request({
    baseURL: "/prod-api",
    url: '/system/role/list',
    method: 'get',
    params: query,
    apiMode:'baseSetting'
  });
}
// 查询角色详细
export function getRole(roleId) {
  return request({
    baseURL: "/prod-api",
    url: '/system/role/' + roleId,
    method: 'get'
  })
}
// 删除角色
export function delRole(roleId) {
  return request({
    baseURL: "/prod-api",
    url: '/system/role/' + roleId,
    method: 'delete'
  })
}
// 新增角色
export function addRole(data) {
  return request({
    baseURL: "/prod-api",
    url: '/system/role',
    method: 'post',
    data: data
  })
}
// 修改角色
export function updateRole(data) {
  return request({
    baseURL: "/prod-api",
    url: '/system/role',
    method: 'put',
    data: data
  })
}
// 角色数据权限
export function dataScope(data) {
  return request({
    baseURL: "/prod-api",
    url: '/system/role/dataScope',
    method: 'put',
    data: data
  })
}
// 角色状态修改
export function changeRoleStatus(roleId, status) {
  const data = {
    roleId,
    status
  }
  return request({
    baseURL: "/prod-api",
    url: '/system/role/changeStatus',
    method: 'put',
    data: data
  })
}
// 根据角色ID查询部门树结构
export function deptTreeSelect(roleId) {
  return request({
    baseURL: "/prod-api",
    url: '/system/role/deptTree/' + roleId,
    method: 'get'
  })
}

// 查询菜单下拉树结构
export function treeselect(userId) {
  return request({
    baseURL: "/prod-api",
    url: `/system/menu/treeselect/${userId}`,
    method: 'get'
  })
}

// 根据角色ID查询菜单下拉树结构
export function roleMenuTreeselect(roleId,userId) {
  return request({
    baseURL: "/prod-api",
    url: `/system/menu/roleMenuTreeselect/${roleId}/${userId}`,
    method: 'get'
  })
}


// 查询角色已授权用户列表
export function allocatedUserList(query) {
  return request({
    baseURL: "/prod-api",
    url: '/system/role/authUser/allocatedList',
    method: 'get',
    params: query
  })
}

// 取消用户授权角色
export function authUserCancel(data) {
  return request({
    baseURL: "/prod-api",
    url: '/system/role/authUser/cancel',
    method: 'put',
    data: data
  })
}

// 批量取消用户授权角色
export function authUserCancelAll(data) {
  return request({
    baseURL: "/prod-api",
    url: '/system/role/authUser/cancelAll',
    method: 'put',
    params: data
  })
}

// 查询角色未授权用户列表
export function unallocatedUserList(query) {
  return request({
    baseURL: "/prod-api",
    url: '/system/role/authUser/unallocatedList',
    method: 'get',
    params: query
  })
}

// 授权用户选择
export function authUserSelectAll(data) {
  return request({
    baseURL: "/prod-api",
    url: '/system/role/authUser/selectAll',
    method: 'put',
    params: data
  })
}

////////--------Dept----------------Dept----------------Dept----------------Dept----------------Dept--------
////////--------Dept----------------Dept----------------Dept----------------Dept----------------Dept--------
// 查询部门列表
export function listDept(query) {
  return request({
    baseURL: "/prod-api",
    url: '/system/dept/list',
    method: 'get',
    params: query,
    apiMode:'baseSetting'
  })
}
// 查询部门详细
export function getDept(deptId) {
  return request({
    baseURL: "/prod-api",
    url: '/system/dept/' + deptId,
    method: 'get'
  })
}
// 删除部门
export function delDept(deptId) {
  return request({
    baseURL: "/prod-api",
    url: '/system/dept/' + deptId,
    method: 'delete'
  })
}
// 新增部门
export function addDept(data) {
  return request({
    baseURL: "/prod-api",
    url: '/system/dept',
    method: 'post',
    data: data
  })
}
// 修改部门
export function updateDept(data) {
  return request({
    baseURL: "/prod-api",
    url: '/system/dept',
    method: 'put',
    data: data
  })
}
// 查询部门列表（排除节点）
export function listDeptExcludeChild(deptId) {
  return request({
    baseURL: "/prod-api",
    url: '/system/dept/list/exclude/' + deptId,
    method: 'get'
  })
}

